Page({
  data: {
    userData: null, // 用户数据
    addresses: [], // 地址列表
    isLoading: false, // 加载状态
    selectedRechargePrice: 0 // 选中的充值金额
    // 已移除：showAgreementModal、showServiceModal（无需在WXML渲染弹窗）
  },

  // 页面加载时触发
  onLoad() {
    this.loadUserData();
    this.loadAddresses();
  },

  // 加载用户数据（从本地缓存）
  loadUserData() {
    const userData = wx.getStorageSync('userData');
    if (userData) {
      this.setData({ userData });
    }
  },

  // 保存用户数据（到本地缓存）
  saveUserData() {
    wx.setStorageSync('userData', this.data.userData);
  },

  // 加载地址数据（从本地缓存）
  loadAddresses() {
    const addresses = wx.getStorageSync('userAddresses') || [
      {
        id: 1,
        name: '张三',
        phone: '13800138000',
        address: '北京市朝阳区某某街道某某小区1号楼101室',
        isDefault: true
      }
    ];
    this.setData({ addresses });
  },

  // 保存地址数据（到本地缓存）
  saveAddresses() {
    wx.setStorageSync('userAddresses', this.data.addresses);
  },

  // 微信授权登录
  handleLogin() {
    const that = this;
    that.setData({ isLoading: true });

    // 小程序获取用户信息（需用户授权）
    wx.getUserProfile({
      desc: '用于完善会员资料',
      success(res) {
        const userData = {
          id: 'wx_' + Date.now(),
          nickname: res.userInfo.nickName,
          avatar: res.userInfo.avatarUrl,
          signature: '这个人很懒，什么都没有留下～',
          isVip: false,
          loginTime: new Date().toISOString()
        };
        that.setData({ userData });
        that.saveUserData();
        wx.showToast({ title: '登录成功！', icon: 'success' });
      },
      fail() {
        wx.showToast({ title: '登录取消', icon: 'none' });
      },
      complete() {
        that.setData({ isLoading: false });
      }
    });
  },

  // 跳转到个人信息页
  gotoProfile() {
    const { userData } = this.data;
    if (!userData) {
      wx.showToast({ title: '请先登录', icon: 'none' });
      return;
    }
    wx.navigateTo({ url: '/pages/profile/profile' });
  },

  // 跳转到地址管理页
  gotoAddress() {
    const { userData } = this.data;
    if (!userData) {
      wx.showToast({ title: '请先登录', icon: 'none' });
      return;
    }
    wx.navigateTo({ url: '/pages/address/address' });
  },

  // 跳转到会员充值页
  gotoRecharge() {
    wx.navigateTo({ url: '/pages/recharge/recharge' });
  },

  // 显示用户协议（改用 wx.showModal，替代原弹窗组件）
  showAgreementModal() {
    wx.showModal({
      title: "用户协议",
      content: `欢迎使用我们的服务！
请您在使用我们的服务前，仔细阅读并理解本协议的全部内容。

1. 服务内容
我们为您提供便捷的在线服务，包括但不限于会员服务、地址管理等。

2. 用户权利与义务
您有权享受我们提供的各项服务，同时需要遵守相关法律法规。

3. 隐私保护
我们高度重视您的隐私，承诺保护您的个人信息安全。`,
      showCancel: true,
      confirmText: "已阅读",
      cancelText: "关闭",
      success: (res) => {
        // 无需额外隐藏逻辑，弹窗自动关闭
      }
    });
  },

  // 显示客服信息（改用 wx.showModal，替代原弹窗组件）
  showServiceModal() {
    wx.showModal({
      title: "平台客服",
      content: `客服联系方式
工作时间：周一至周日 9:00-18:00
客服电话：18338679792
客服邮箱：18338679792@139.com`,
      showCancel: true,
      confirmText: "拨打客服",
      cancelText: "关闭",
      success: (res) => {
        // 点击“拨打客服”触发打电话逻辑
        if (res.confirm) {
          this.makePhoneCall();
        }
      }
    });
  },

  // 拨打客服电话
  makePhoneCall() {
    wx.makePhoneCall({
      phoneNumber: '400-123-4567',
      fail() {
        wx.showToast({ title: '拨打失败，请手动拨号', icon: 'none' });
      }
    });
  },

  // 页面显示时重新加载数据（确保缓存数据更新）
  onShow() {
    this.loadUserData();
    this.loadAddresses();
  },

  // 下拉刷新时更新数据
  onPullDownRefresh() {
    this.loadUserData();
    this.loadAddresses();
    wx.stopPullDownRefresh(); // 停止下拉刷新动画
  }
});